Skip to content

Prepare 1.0.0: branding, GitHub metadata, and release automation#22

Merged
MarketDataApp merged 3 commits into
mainfrom
release/v1.0.0
Jun 29, 2026
Merged

Prepare 1.0.0: branding, GitHub metadata, and release automation#22
MarketDataApp merged 3 commits into
mainfrom
release/v1.0.0

Conversation

@MarketDataApp

Copy link
Copy Markdown
Owner

First stable release prep for the Market Data Java & Kotlin SDK. No SDK source/behavior changes — versioning, docs/branding, GitHub repo metadata, and release automation.

Version & release notes

  • CHANGELOG: clean ## [1.0.0] - 2026-06-29 entry; dropped accreted pre-release dev history; added Keep-a-Changelog compare links.
  • Version 0.1.01.0.0 across README, docs/installation.md, examples; build default → 1.0.0-SNAPSHOT (publish injects the real version via -PsdkVersion).

Branding / README

  • Centered header matching the sibling SDKs (py/js/php/go): tagline, project + community shields.
  • Dual Java & Kotlin positioning surfaced (title v1.0, JVM blurb, Java + Kotlin badges, Kotlin promoted to lead Feature).
  • POM metadata: name/description carry the Java & Kotlin branding; Project URL → docs site (/docs/sdk/java), new Issue Tracker (<issueManagement>); Source Control unchanged.

GitHub repo metadata (adapted from sdk-php)

  • Issue templates: bug.yml (+ Language and Build-Tool dropdowns, JDK/Gradle/Maven fields) and config.yml.
  • FUNDING.yml, dependabot.yml (gradle ecosystem), dependabot-auto-merge.yml.
  • Process docs: BUG_FINDING.md, ISSUE_WORKFLOW.md, RELEASE_PROCESS.md — fully translated to Gradle/JUnit/Java.

Release automation

  • tag-and-release.yml (new): gated JDK {17,21,25} matrix → verify tag is new → extract CHANGELOG notes → tag vX.Y.Z + GitHub Release, then chains into Maven Central by default (publish_to_central toggle to opt out).
  • publish.yml: now reusable via workflow_call (kept manual dispatch); inputs.version routed through env: to remove shell-injection surface.
  • update-changelog.yml (new): folds release notes back into CHANGELOG on published release.

Chaining design note

Used workflow_call rather than an on: release trigger because a release created with the default GITHUB_TOKEN does not trigger downstream workflows — workflow_call keeps it one deterministic run, no extra PAT.

Verification

  • ./gradlew build → green at 1.0.0.
  • generatePomFileForMavenPublication → all External Resources resolve.
  • Both release workflows parse clean; job graph: gate → release → publish-central (if toggle).

Not included

  • docs/architecture.md / docs/sdk-requirements.md — pre-existing untracked files, unrelated; left out.
  • Nothing tagged or published — that's still the manual workflow run.

Heads-up

If the maven-central GitHub Environment has required reviewers, the chained publish will pause for approval rather than being fully hands-off.

…tion

Version & docs:
- Cut CHANGELOG 1.0.0 (2026-06-29); drop accreted pre-release history
- Bump version references to 1.0.0; default to 1.0.0-SNAPSHOT
- README: dual Java & Kotlin branding, shields, Features, v1.0 title
- POM: Java & Kotlin name/description, docs-site project URL,
  GitHub issue tracker; finalize Install section

GitHub repo metadata (adapted from sdk-php):
- Issue templates (bug.yml + config.yml) with Java/Kotlin + build-tool fields
- FUNDING.yml, dependabot.yml (gradle), dependabot-auto-merge
- BUG_FINDING / ISSUE_WORKFLOW / RELEASE_PROCESS process docs

Release automation:
- tag-and-release.yml: gated JDK matrix → tag + GitHub Release,
  chaining into Maven Central by default (publish_to_central toggle)
- publish.yml: reusable via workflow_call; harden version interpolation
- update-changelog.yml on published release
@codecov

codecov Bot commented Jun 29, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 98.27%. Comparing base (5884519) to head (596266b).
⚠️ Report is 2 commits behind head on main.

Additional details and impacted files
@@             Coverage Diff              @@
##               main      #22      +/-   ##
============================================
- Coverage     98.32%   98.27%   -0.06%     
+ Complexity     1073     1043      -30     
============================================
  Files           128      123       -5     
  Lines          2692     2606      -86     
  Branches        311      301      -10     
============================================
- Hits           2647     2561      -86     
  Partials         45       45              

see 9 files with indirect coverage changes


Continue to review full report in Codecov by Harness.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 5884519...596266b. Read the comment docs.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Pin stefanzweifel/changelog-updater-action (v1.12.0) and
git-auto-commit-action (v7.2.0) to full commit SHAs to remove the
mutable-tag supply-chain surface. Dependabot's github-actions ecosystem
keeps the SHAs current via reviewed PRs.
Comment thread .github/workflows/tag-and-release.yml
Comment thread .github/workflows/update-changelog.yml Outdated
Address PR review (MarketDataDev03):

1. Chained publish built github.sha (the launch commit), not the
   released ref. In workflow_call, github.sha is inherited from the
   caller's launch ref, and publish.yml checked out with no ref:. If
   tag-and-release was launched from a branch other than inputs.ref, the
   tag/Release pointed at inputs.ref but the immutable Maven Central jar
   was built from the launch commit.
   Fix: add a `ref` input to publish.yml used in both the guard
   (head_sha) and checkout; tag-and-release resolves inputs.ref to a
   concrete SHA, tags at that SHA, and passes it to publish-central.

2. update-changelog.yml (on: release) never fired: the release is cut
   with GITHUB_TOKEN, and GITHUB_TOKEN-created events don't trigger
   workflows — the same rule that motivated workflow_call for publish.
   It was also redundant: our process finalizes the CHANGELOG (dated
   section) before the tag, which the notes-extraction step requires.
   Fix: remove the workflow.
@MarketDataDev03 MarketDataDev03 self-requested a review June 29, 2026 17:16

@MarketDataDev03 MarketDataDev03 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@MarketDataApp MarketDataApp merged commit 0f65b22 into main Jun 29, 2026
3 checks passed
@MarketDataApp MarketDataApp deleted the release/v1.0.0 branch June 29, 2026 19:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants